-
Notifications
You must be signed in to change notification settings - Fork 30k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
stream: fix fromAsyncGen #40499
stream: fix fromAsyncGen #40499
Conversation
@nodejs/streams |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
Credit to @kmamal for making me aware of this issue and writing a repro. |
@benjamingr @lpinca @jasnell would appreciate another review here so we can land it in the next release. |
Can we fast-track this so it can be included in 16.12 #40504 (comment) |
Fast-track has been requested by @ronag. Please 👍 to approve. |
Landed in 2bed031...0f78d26 |
Notable changes: Fixed distribution for native addon builds This release fixes an issue introduced in Node.js v17.0.0, where some V8 headers were missing from the distributed tarball, making it impossible to build native addons. These headers are now included. #40526 Fixed stream issues * Fixed a regression in `stream.promises.pipeline`, which was introduced in version 16.10.0, is fixed. It is now possible again to pass an array of streams to the function. #40193 * Fixed a bug in `stream.Duplex.from`, which didn't work properly when an async generator function was passed to it. #40499 PR-URL: #40535
Notable changes: Fixed distribution for native addon builds This release fixes an issue introduced in Node.js v17.0.0, where some V8 headers were missing from the distributed tarball, making it impossible to build native addons. These headers are now included. #40526 Fixed stream issues * Fixed a regression in `stream.promises.pipeline`, which was introduced in version 16.10.0, is fixed. It is now possible again to pass an array of streams to the function. #40193 * Fixed a bug in `stream.Duplex.from`, which didn't work properly when an async generator function was passed to it. #40499 PR-URL: #40535
Fixes: #40497
The problem here is that the resolve does not get updated before yielding control back to the user, hence the user might call the wrong resolve and hang the pipeline.